package com.naiterui.ehp.bp.security.service;

import com.naiterui.ehp.bp.security.vo.AuthorizationFaceInfoVO;
import com.naiterui.ehp.bp.security.vo.AuthorizationInfoVO;
import com.naiterui.ehp.bp.security.vo.AuthorizationSmsVO;
import com.naiterui.ehp.bp.security.vo.AuthorizationUserVO;
import com.naiterui.ehp.bp.security.vo.VerificationCodeVO;
import org.springframework.security.core.AuthenticationException;

/**
 * @author 王泽浩
 * @date 2020/7/15 10:29 上午
 * @since 1.0.0
 */
public interface IAuthorizationService {

  /**
   * 获取登录短信验证码
   *
   * @param authUser /
   * @return
   */
  AuthorizationSmsVO smsCode(AuthorizationUserVO authUser);

  /**
   * 登录授权
   *
   * @param authUser /
   * @return
   */
  AuthorizationInfoVO login(AuthorizationUserVO authUser) throws AuthenticationException;

  /**
   * PC人脸登录授权
   *
   * @param faceId   /
   * @param username /
   * @return
   */
  AuthorizationFaceInfoVO faceLogin(String faceId, String username) throws AuthenticationException;

  /**
   * 获取验证码
   *
   * @return /
   */
  VerificationCodeVO getCode();

}
